home *** CD-ROM | disk | FTP | other *** search
/ MacWorld 1999 January - Disc 2 / Macworld (1999-01) (Disk 2).dmg / Serious Demos / Symbolic Composer 4.2 / Environment / System / MRAC / Generate / cf-noise-white < prev    next >
Lisp/Scheme  |  1998-08-11  |  2KB  |  41 lines

  1. cf-noise-white samples scale seed list
  2.  
  3. Conversion is a key element in SCOM composing. Vectors can become integers, integers can become symbols, and so on. In this respect cf-noise-white provides a more specific facility than cfunction in enabling conversion and substitution.
  4.  
  5. (setq prime (vector-to-list (gen-primes 18)))
  6.  
  7. (cf-noise-white 24 1.0 .37 prime)
  8. => (2 13 13 17 7 11 3 5 13 3 17 1 2 7 5 1 13 2 13 1 7 13 3 1)
  9.  
  10. Here, a variable called prime-n is a list of prime numbers between 1 and 18. This becomes a reference sequence for a conversion process, from 24 vectors generated via the <function> gen-noise-white, to a <list> of prime numbers between 1 and 18 that have been substituted in an appropriate quantitive sequence. In the function cf-noise-white the function gen-noise-white is subsummed into the function whole.
  11.  
  12. The conversion and substitution process may also extend to symbols within a reference sequence.
  13.  
  14. (setq sym '(a b c d e f g h i j k l))
  15.  
  16. (cf-noise-white 24 1.0 .37 sym)
  17. => (c k j l g i d f j d l a b g e a j c j b g j c a)
  18.  
  19. In addition, the <samples> parameter may be treated as a list of integers indicating the length of sublists in the output statement.
  20.  
  21. (cf-noise-white '(3 5 7 5 3) 1.0 .37 sym)
  22. => ((a d l) (c l h a l) (l i a l c l a) (c g a f l) (l d a))
  23.  
  24. (cf-noise-white '(3 5 7 5 3) 1.0 nil sym)
  25. => ((i a l) (e k i a l) (c l k i l a f) (a d l k a) (h a l))
  26. => ...
  27.  
  28. (cf-noise-white 8 1.0 .23 '((ab ac ad bc) (a b c d)))
  29. => ((ac bc ab ad ac ac ac ab) (a d d b c c a d))
  30.  
  31. (cf-noise-white '(4 3 5) 1.0 .23 '((ab ac ad bc) (a b c d)))
  32. => ((ac bc ab ad) (a c d) (ab ad bc ad ab))
  33.  
  34. (cf-noise-white '(4 3 1 5 1 2 1)
  35.                 '(-1.0 1.0) .23 '((ab ac ad bc) (a b c d)))
  36. => ((ac bc ab ad) (a c d) (ab) (a c a d a) (bc) (d a) (ab))
  37.  
  38. (cf-noise-white '(8 3) '(-1.0 .5) .34
  39.                 '((a b c d) (ab ac ad bc) (e f g h)))
  40. => ((b d d c b d a d) (ac bc ab) (f g e h e f g h))
  41.